package com.weed.core;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

/**
 * 函数说明：
 *    公用参数输出。
 * @author Jason Zhuo.
 * @version 1.0
 */

public class CommonOutput {

   int retCode = 0;
   String errorCode = null;
   WeedException throwable = null;
   String forward = null;
   String retDesc = "";
   List lists = new ArrayList();
   int retRownum = -1;
   HashMap hashMap = new HashMap();
  /**
   * 是否成功执行。
   * @return
   *     返回0:代表成功执行。
   *     返回<1:代表SQL有问题。
   *     返回>1:代表返回成功，并且有返回值。
   */
  public int getRetCode(){return retCode;}
  /**
   * 设置返回代码。
   */
  public void setRetCode(int code){this.retCode = code;}
  /**
   * 如果执行成功，不返加任何数据，否则返回失败的原因。
   * @return 描述信息。
   */
  public String getRetDesc(){
    return retDesc;
  }
  /**
   * 设置返回的信息。
   * @param desc String
   * @return String
   */
  public void setRetDesc(String desc){this.retDesc = desc;}
  /**
   * 获得查询的结果，其中存放是结果集，如果有多个结果集，可以存放多个结果集，以列表的形式返回。
   * @return 列表
   */
  public List getResultList(){return lists;}
  /**
   * 设置结查集列表。
   * @param result List
   */
  public void setResultList(List result){this.lists = result;}
  /**
   * 获得受影响的行数。
   * @return int
   */
  public int getRetRownum(){return retRownum;}
  /**
   * 设置受影响的行数。
   * @param rownum int
   */
  public void setRetRownum(int rownum){}

  /**
   * 逻辑转向。
   */
  public CommonOutput toForward(String forward){
       this.forward = forward;
       return this;
  }
  /**
   * 获得所有异常。
   * @return Exception
   */
  public WeedException getException(){
    return throwable;
  }
  /**
   * 设置所有异常。
   * @return Exception
   */
  public void setException(WeedException throwable){
    this.throwable =throwable;
  }
  /**
   * 设置所有异常。
   * @param erroCode 错误代码
   * @param able 异常
   */
  public void setException(String errorCode,WeedException throwable){
    this.errorCode = errorCode;
    this.throwable = throwable;
  }
  
  //允许增加返回值。
  public void putValue(String key,Object value){
    hashMap.put(key, value);
  }
  //获得增加的值。
  public Object getValue(String key){
    return hashMap.get(key);
  }
  
}
